/*
 * MainMenu.h
 *
 *  Created on: Jan 5, 2009
 *      Author: Michael
 */

#ifndef MAINMENU_H_
#define MAINMENU_H_

#include "GameState.h"

class MainMenu: public GameState {

private:
	MainMenu();
	static MainMenu* inst;

	//textures we need
	IDirect3DTexture9* m_MMScreen;
	D3DXVECTOR3 m_MMScreenCenter;

public:
	static MainMenu* Instance();

	//functions to handle initialization and clean up
	void Init();
	void CleanUp();

	//functions to handle pausing and resuming a state
	void Pause();
	void Resume();

	/*functions to handle main processes of states
	 * They will take a pointer to the main game
	 * so that they have easy access to game information
	 */
	void HandleInput(Prismatic* game);
	void Render(Prismatic* game);
	void Update(Prismatic* game);
};

#endif /* MAINMENU_H_ */
